#pragma once

#include "pch.h"
#include <DrawingSurfaceNative.h>

ref class PreviewBase abstract
{
internal:
	virtual HRESULT Connect(IDrawingSurfaceRuntimeHostNative* host, ID3D11Device1* device) abstract;
	virtual void Disconnect() abstract;

	virtual HRESULT PrepareResources(const LARGE_INTEGER* presentTargetTime, DrawingSurfaceSizeF* desiredRenderTargetSize) abstract;
	virtual HRESULT Draw(ID3D11Device1* device, ID3D11DeviceContext1* context, ID3D11RenderTargetView* renderTargetView) abstract;
};